﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ClasesLibreria.dao;
using ClasesLibreria.dominio;


public partial class PedidoProveedor : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            PedidoDeProveedor pedidoProveedor = new PedidoDeProveedor();
            pedidoProveedor.UsuarioAlta = (Usuario)Session["usuario"];
            Session["pedidoProveedor"] = pedidoProveedor;

            ddlProveedor.DataSource = DAOProveedor.getList(Database.connectionString());
            ddlProveedor.DataValueField = "Id";
            ddlProveedor.DataTextField = "RazonSocial";
            ddlProveedor.DataBind();
            ddlProveedor.Items.Insert(0, new ListItem("Seleccione Proveedor", string.Empty));

            gvProductos.DataSource = pedidoProveedor.Items;
            gvProductos.DataBind();
        }
    }
    protected void txtFechaEntregaDeseada_TextChanged(object sender, EventArgs e)
    {

    }
    protected void cmdConfirmar_Click(object sender, EventArgs e)
    {

    }
    protected void ddlProveedor_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (ddlProveedor.SelectedValue != string.Empty)
        {
            ddlProducto.DataSource = DAOProducto.getListProductosByProveedor(int.Parse(ddlProveedor.SelectedValue), Database.connectionString());
            ddlProducto.DataValueField = "Codigo";
            ddlProducto.DataTextField = "Nombre";
            ddlProducto.DataBind();
            ddlProducto.Items.Insert(0, new ListItem("Seleccione Producto", string.Empty));
        }
        else
        { ddlProducto.Items.Clear(); }
    }
    protected void cmdAgregarProducto_Click(object sender, EventArgs e)
    {
        PedidoDeProveedor pedidoProveedor = new PedidoDeProveedor();
        pedidoProveedor = (PedidoDeProveedor)Session["pedidoProveedor"];

        Producto producto = new Producto();
        producto = DAOProducto.queryProductoByCodigo(Database.connectionString(), int.Parse(ddlProducto.SelectedValue));

        PedidoProveedorDetalle item = new PedidoProveedorDetalle();
        item.Producto = producto;
        item.CantidadSolicitada = double.Parse(txtCantidad.Text);
        pedidoProveedor.agregarItem(item);

        Session["pedidoProveedor"] = pedidoProveedor;
        gvProductos.DataSource = pedidoProveedor.Items;
        gvProductos.DataBind();
    }
}